---
name: Using the CLI
title: Scaffold and run Rasa projects in seconds with Botfront CLI
route: /docs/installation/cli
menu: Installation
meta:
  - name: description
    content: "Scaffold and run your Rasa project in minutes with the Botfront CLI"
  - name: keywords
    content: rasa cli
---

# Using the Botfront CLI

Botfront comes with a command line interface (CLI) to manage your projects.
The CLI is useful to scaffold projects and launch all required services (Botfront, Rasa, Duckling, MongoDB,...).

You can start the CLI by running `botfront` in your terminal.
It will open a contextual menu which contains the options you would need most of the time.

Note that You can use the CLI when Botfront is installed on your local machine or on a single server, but not on a cluster.

## Main commands

| Command                               | What it does                 | Where to run it          |
| ------------------------------------- | ---------------------------- | ------------------------ |
| `botfront init`                       | Create a new project         | Anywhere                 |
| `botfront up`                         | Start Botfront project       | from your project folder |
| `botfront down`                       | Stop Botfront project        | from your project folder |
| `botfront logs`                       | View Botfront logs           | from your project folder |
| `botfront watch`                      | Watch actions files changes  | from your project folder |
| `botfront set-project <project_id>`   | Connects Rasa to a project   | from your project folder |

## Other commands

You can always get help with `botfront --help`

```
Botfront CLI

Options:
  -V, --version      output the version number
  -h, --help         output usage information

Commands:
  init [options]     Create a new Botfront project.
  up [options]       Start a Botfront project.  Must be executed in your project's directory
  down [options]     Stops a Botfront project and releases Docker resources.  Must be executed in your project's directory
  logs [options]     Display botfront logs. Must be executed in your project's directory
  killall [options]  Stops any running Botfront project
  set-project <project_id>  Set Rasa and Actions service to serve project with a given project ID
  stop <service>     Stop a Botfront service (interactive). Must be executed in your project's directory
  start <service>    Start a Botfront service (interactive). Must be executed in your project's directory
  restart <service>  Restart a Botfront service (interactive). Must be executed in your project's directory
  watch              Restart the Actions service automatically on file change. Must be executed in your project's directory
  docs               Open the online documentation in your browser
  update             Update a project if the current Botfront version as a higher minor version but not a different major version
```

## Using plain `docker-compose` commands

The CLI wraps `docker-compose`. `botfront up` generates `.env` and `.docker-compose.yml` at the root of your project and then invokes `docker-compose up`.
Once those files are generated you can use all `docker-compose` commands from the root of your project.
Note that since those files are generated, any change will be overwritten next time you run `botfront up`. Instead, make changes to the files found in the `.botfront` folder.

## Troubleshooting

Sometimes Docker may complain about a missing network or a conflicting name.
One of these commands will generally fix the problem:

- `botfront down` from your project folder
- `botfront killall` from anywhere
- [`docker system prune`](https://docs.docker.com/engine/reference/commandline/system_prune/) from anywhere
